package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 数据源信息对象 data_source
 *
 * @author ruoyi
 * @date 2025-04-30
 */
public class DataSource extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 数据源唯一标识 */
    private Long id;

    /** 数据源名称 */
    @Excel(name = "数据源名称")
    private String sourceName;

    /** 数据源类型 */
    @Excel(name = "数据源类型")
    private String sourceType;

    /** JDBC 连接串 */
    @Excel(name = "JDBC 连接串")
    private String jdbcUrl;

    /** 用途描述 */
    @Excel(name = "用途描述")
    private String usageDescription;

    /** 管道类型 */
    @Excel(name = "管道类型")
    private String pipelineType;

    /** 连接状态 */
    @Excel(name = "连接状态")
    private String connectionStatus;

    //用户
    private String user;

    //密码
    private String password;

    public String getUser() {
        return user;
    }

    public void setUser(String user) {
        this.user = user;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }

    public void setSourceName(String sourceName)
    {
        this.sourceName = sourceName;
    }

    public String getSourceName()
    {
        return sourceName;
    }

    public void setSourceType(String sourceType)
    {
        this.sourceType = sourceType;
    }

    public String getSourceType()
    {
        return sourceType;
    }

    public void setJdbcUrl(String jdbcUrl)
    {
        this.jdbcUrl = jdbcUrl;
    }

    public String getJdbcUrl()
    {
        return jdbcUrl;
    }

    public void setUsageDescription(String usageDescription)
    {
        this.usageDescription = usageDescription;
    }

    public String getUsageDescription()
    {
        return usageDescription;
    }

    public void setPipelineType(String pipelineType)
    {
        this.pipelineType = pipelineType;
    }

    public String getPipelineType()
    {
        return pipelineType;
    }

    public void setConnectionStatus(String connectionStatus)
    {
        this.connectionStatus = connectionStatus;
    }

    public String getConnectionStatus()
    {
        return connectionStatus;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("sourceName", getSourceName())
            .append("sourceType", getSourceType())
            .append("jdbcUrl", getJdbcUrl())
            .append("usageDescription", getUsageDescription())
            .append("pipelineType", getPipelineType())
            .append("connectionStatus", getConnectionStatus())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
